package com.heatup.apt.model;

import java.io.Serializable;
import java.util.Date;


import com.baomidou.mybatisplus.annotations.IdType;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import org.springframework.format.annotation.DateTimeFormat;

/**
 *
 * 门禁设备密码表
 *
 */
@TableName("access_device")
public class AccessDevice implements Serializable {

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 关联到的门店ID */
    @TableField(value = "store_id")
    private Integer storeId;

    /** 关联到的门店中所在位置( 1大门 2浴室) */
    @TableField(value = "store_location")
    private Integer storeLocation;

    /** 关联到的门店中的操房号 */
    @TableField(value = "workout_room_num")
    private Integer workoutRoomNum;

    /** 关联到的门店中的操房名称 */
    @TableField(value = "workout_room_name")
    private String workoutRoomName;

    /** 门禁设备序列号 */
    @TableField(value = "device_serial_id")
    private String deviceSerialId;

    /** 门禁密码类型 1动态密码 2静态密码 */
    @TableField(value = "pwd_type")
    private Integer pwdType;

    /** 固定门禁密码 动态门禁超级密码 */
    @TableField(value = "super_pwd")
    private String superPwd;

    /** 设备最后报告在线时间 */
    @TableField(value = "last_update_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastUpdateTime;

    /** 设备状态(1 在线 2 离线 3 停用) */
    @TableField(value = "device_status")
    private Integer deviceStatus;

    /** 门店名称 */
    @TableField(exist = false)
    private String storeName;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Integer getStoreId() {
        return storeId;
    }

    public void setStoreId(Integer storeId) {
        this.storeId = storeId;
    }

    public Integer getStoreLocation() {
        return storeLocation;
    }

    public void setStoreLocation(Integer storeLocation) {
        this.storeLocation = storeLocation;
    }

    public Integer getWorkoutRoomNum() {
        return workoutRoomNum;
    }

    public void setWorkoutRoomNum(Integer workoutRoomNum) {
        this.workoutRoomNum = workoutRoomNum;
    }

    public String getWorkoutRoomName() {
        return workoutRoomName;
    }

    public void setWorkoutRoomName(String workoutRoomName) {
        this.workoutRoomName = workoutRoomName;
    }

    public String getDeviceSerialId() {
        return deviceSerialId;
    }

    public void setDeviceSerialId(String deviceSerialId) {
        this.deviceSerialId = deviceSerialId;
    }

    public Integer getPwdType() {
        return pwdType;
    }

    public void setPwdType(Integer pwdType) {
        this.pwdType = pwdType;
    }

    public String getSuperPwd() {
        return superPwd;
    }

    public void setSuperPwd(String superPwd) {
        this.superPwd = superPwd;
    }

    public Date getLastUpdateTime() {
        return lastUpdateTime;
    }

    public void setLastUpdateTime(Date lastUpdateTime) {
        this.lastUpdateTime = lastUpdateTime;
    }

    public Integer getDeviceStatus() {
        return deviceStatus;
    }

    public void setDeviceStatus(Integer deviceStatus) {
        this.deviceStatus = deviceStatus;
    }

    public String getStoreName() {
        return storeName;
    }

    public void setStoreName(String storeName) {
        this.storeName = storeName;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("AccessDevice{");
        sb.append("id=").append(id);
        sb.append(", storeId=").append(storeId);
        sb.append(", storeLocation=").append(storeLocation);
        sb.append(", workoutRoomNum=").append(workoutRoomNum);
        sb.append(", workoutRoomName='").append(workoutRoomName).append('\'');
        sb.append(", deviceSerialId='").append(deviceSerialId).append('\'');
        sb.append(", pwdType=").append(pwdType);
        sb.append(", superPwd='").append(superPwd).append('\'');
        sb.append(", lastUpdateTime=").append(lastUpdateTime);
        sb.append(", deviceStatus=").append(deviceStatus);
        sb.append(", storeName='").append(storeName).append('\'');
        sb.append('}');
        return sb.toString();
    }
}
